/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package suministros.ejb30.entity;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;

/**
 *
 * @author Administrador
 */
@Entity
@Table(name = "asistencia")
@NamedQueries({
    @NamedQuery(name = "Asistencia.findAll", query = "SELECT a FROM Asistencia a"),
    @NamedQuery(name = "Asistencia.findByDni", query = "SELECT a FROM Asistencia a WHERE a.asistenciaPK.dni = :dni"),
    @NamedQuery(name = "Asistencia.findByFechaAndArea", query = "SELECT a FROM Asistencia a WHERE a.asistenciaPK.fecha = :fecha and a.codArea = :area"),
    @NamedQuery(name = "Asistencia.findByObser", query = "SELECT a FROM Asistencia a WHERE a.obser = :obser"),
    @NamedQuery(name = "Asistencia.findByHorasOrdinarias", query = "SELECT a FROM Asistencia a WHERE a.horasOrdinarias = :horasOrdinarias"),
    @NamedQuery(name = "Asistencia.findByHorasNocturnas", query = "SELECT a FROM Asistencia a WHERE a.horasNocturnas = :horasNocturnas"),
    @NamedQuery(name = "Asistencia.findByHorasExtra25", query = "SELECT a FROM Asistencia a WHERE a.horasExtra25 = :horasExtra25"),
    @NamedQuery(name = "Asistencia.findByHorasExtra35", query = "SELECT a FROM Asistencia a WHERE a.horasExtra35 = :horasExtra35"),
    @NamedQuery(name = "Asistencia.findByDominical", query = "SELECT a FROM Asistencia a WHERE a.dominical = :dominical")})
public class Asistencia implements Serializable {
    private static final long serialVersionUID = 1L;
    @EmbeddedId
    protected AsistenciaPK asistenciaPK;
    @Column(name = "obser")
    private String obser;
    @Column(name = "horas_ordinarias")
    private BigDecimal horasOrdinarias;
    @Column(name = "horas_nocturnas")
    private BigDecimal horasNocturnas;
    @Column(name = "horas_extra_25")
    private BigDecimal horasExtra25;
    @Column(name = "horas_extra_35")
    private BigDecimal horasExtra35;
    @Column(name = "dominical")
    private Boolean dominical;
    @Column(name = "anio")
    private String anio;
    @Column(name = "mes")
    private String mes;
    @Column(name = "nombres")
    private String nombres;
     @Column(name = "feriado")
    private Boolean feriado;
     @Column(name = "cod_area")
    private Integer codArea;




    public Asistencia() {
    }

    public Asistencia(AsistenciaPK asistenciaPK) {
        this.asistenciaPK = asistenciaPK;
    }

    public Asistencia(String dni, String fecha) {
        this.asistenciaPK = new AsistenciaPK(dni, fecha);
    }

    public AsistenciaPK getAsistenciaPK() {
        return asistenciaPK;
    }

    public void setAsistenciaPK(AsistenciaPK asistenciaPK) {
        this.asistenciaPK = asistenciaPK;
    }

    public Integer getCodArea() {
        return codArea;
    }

    public void setCodArea(Integer codArea) {
        this.codArea = codArea;
    }

   

    
    public Boolean getFeriado() {
        return feriado;
    }

    public void setFeriado(Boolean feriado) {
        this.feriado = feriado;
    }

    public String getAnio() {
        return anio;
    }

    public void setAnio(String anio) {
        this.anio = anio;
    }

    public String getMes() {
        return mes;
    }

    public void setMes(String mes) {
        this.mes = mes;
    }

    public String getNombres() {
        return nombres;
    }

    public void setNombres(String nombres) {
        this.nombres = nombres;
    }

    public String getObser() {
        return obser;
    }

    public void setObser(String obser) {
        this.obser = obser;
    }

    public BigDecimal getHorasOrdinarias() {
        return horasOrdinarias;
    }

    public void setHorasOrdinarias(BigDecimal horasOrdinarias) {
        this.horasOrdinarias = horasOrdinarias;
    }

    public BigDecimal getHorasNocturnas() {
        return horasNocturnas;
    }

    public void setHorasNocturnas(BigDecimal horasNocturnas) {
        this.horasNocturnas = horasNocturnas;
    }

    public BigDecimal getHorasExtra25() {
        return horasExtra25;
    }

    public void setHorasExtra25(BigDecimal horasExtra25) {
        this.horasExtra25 = horasExtra25;
    }

    public BigDecimal getHorasExtra35() {
        return horasExtra35;
    }

    public void setHorasExtra35(BigDecimal horasExtra35) {
        this.horasExtra35 = horasExtra35;
    }

    public Boolean getDominical() {
        return dominical;
    }

    public void setDominical(Boolean dominical) {
        this.dominical = dominical;
    }

    @Override
    public int hashCode() {
        int hash = 0;
        hash += (asistenciaPK != null ? asistenciaPK.hashCode() : 0);
        return hash;
    }

    @Override
    public boolean equals(Object object) {
        // TODO: Warning - this method won't work in the case the id fields are not set
        if (!(object instanceof Asistencia)) {
            return false;
        }
        Asistencia other = (Asistencia) object;
        if ((this.asistenciaPK == null && other.asistenciaPK != null) || (this.asistenciaPK != null && !this.asistenciaPK.equals(other.asistenciaPK))) {
            return false;
        }
        return true;
    }

    @Override
    public String toString() {
        return "suministros.ejb30.entity.Asistencia[asistenciaPK=" + asistenciaPK + "]";
    }

}
